首页 帮助中心 基调听云App SDK部署

iOS SDK部署

1、获取基调听云SDK

1.1、解压后将tingyunApp.framework拖拽到xcode工程中并勾选「Copy items if needed」

1.2、选择工程target -> Build Setting ->搜索Other Linker Flags , 添加编译标志-ObjC

1.3、添加依赖库

依赖库 作用
libz.tbd 解压缩
WebKit.framwork 浏览器内核
Security.framework 访问钥匙链
CoreTelephony.framework 获取运营商
SystemConfiguration.framework 获取网络状态
JavaScriptCore.framework 支持js自定义错误功能
CoreGraphics.framework 支持可视化命名功能
QuartzCore.framework 支持可视化命名功能
CFNetwork.framework 支持移动拨测功能
libresolv.tbd 支持移动拨测功能
libc++.tbd c++符号化

2、添加基调听云SDK

2.1、获取AppKey

2.2、导入头文件

  • Objective-C 请在工程的「pch」文件中导入头文件
#import <tingyunApp/NBSAppAgent.h>
  • Swift 请在工程的「Bridging_Header.h」文件中导入头文件
#import <tingyunApp/NBSAppAgent.h>

2.3、引入 SDK

  • Objective-C

在工程「main.m」文件中的「main」方法中初始化 SDK

int main(int argc, char * argv[]) {
    @autoreleasepool {
        //Your_appkey从平台中获取
        [NBSAppAgent startWithAppID:@"Your_appkey"];  
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}
  • Swift

在「AppDelegate.swift」的「application(_:didFinishLaunchingWithOptions:)」方法中初始化

若需要采集应用启动数据请参见采集应用启动参数

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        NBSAppAgent.start(withAppID: "Your_appkey", location: true)
        return true
}

3、开启可视化命名(可选配置)

开启可视化命名功能,可以通过在App应用内点选的方式为「原生页面」和「操作」进行重命名并在用户体验模块中展示

4、首次启动开启模块功能开关

出于兼容性考虑, 首次启动 SDK 仅在调试模式下开启全部功能模块,非调试模式下仅开启崩溃模块,可通过以下接口开启 SDK 的模块开关

  • 模块功能开关接口
/*
 SDK首次初始化由于尚未与基调听云平台交互,默认模块开关仅开启「崩溃模块」,可以通过开启「网络模块」和「用户体验模块」来采集应用首次启动数据。
 @warning:调用该接口设置启动选项,SDK首次启动不受基调听云平台开关控制
 */
+ (void)setStartOption:(NBSOPTION)option; 
  • 代码示例
//在SDK初始化之前调用, 首次启动开启网络、crash采集功能、用户体验分析。
[NBSAppAgent setStartOption:NBSOption_Net|NBSOption_Crash|NBS_OPTION_UI]; 
[NBSAppAgent startWithAppID:@"Your_appkey"]; 

5、获取用户标识

通过添加「用户标识」可在基调听云报表平台通过该标识检索到具体用户的性能问题

  • 相关接口
/*
 设置用户标识符,不能超过64个字符,可以在任意位置多次调用(值覆盖)
 @userId:唯一标识一个用户的信息
 */
+ (void)setUserIdentifier:(NSString *)userId;
  • 代码示例
- (void)viewDidLoad
{
	[super viewDidLoad];
	//用户标识可为邮箱、手机号等能够标识用户身份的信息,如xxx@tingyun.com
	[NBSAppAgent setUserIdentifier:@"userId"];
}

6、嵌码完整性校验

嵌码完成后,可以在控制台中查看基调听云 SDK 日志输出结果用以判断嵌码是否成功

  • 日志输出
NBSAppAgent  SDK_Version
---->start!
Success to connect to NBSSERVER